package com.fudan.backend.service;

import com.fudan.backend.exception.RetCode;
import com.fudan.backend.pojo.ReturnGoodsRequest;
import com.github.pagehelper.PageInfo;

public interface ReturnGoodsRequestService {
    /**
     * 新增一条退货申请
     * @param returnGoodsRequest
     * @return 返回对应状态码
     */
    RetCode addReturnGoodsRequest(ReturnGoodsRequest returnGoodsRequest);

    /**
     * @param current  当前页码
     * @param pageSize 页面大小
     * @param userId 用户ID
     * @return 根据用户ID所有退货申请的页面信息
     */
    PageInfo<ReturnGoodsRequest> getAllReturnGoodsRequestByUserId(int current, int pageSize, String userId);

    /**
     * @param current  当前页码
     * @param pageSize 页面大小
     * @param storeId 商店ID
     * @return 根据商店ID所有退货申请的页面信息
     */
    PageInfo<ReturnGoodsRequest> getAllReturnGoodsRequestByStoreId(int current, int pageSize, String storeId);

    /**
     * 处理退货申请
     * @param returnGoodsRequest
     * @return 如果成功返回成功信息, 如果找不到则返回相应错误的错误信息
     */
    RetCode processReturnGoodsRequest(ReturnGoodsRequest returnGoodsRequest);
}
